# -*- coding: utf-8 -*-
import os
import shutil
import datetime
import random

# path=r"E:\\"
path=r"E:\\相声小品"
arrOptions = ['【相声小品】', ' [春晚精选]',]
fileList = os.listdir(path)


def transformNum(index):
    print('')
    indey = index+1
    if indey <= 9:
        return '00' + str(indey)
    elif indey >= 100 :
        return str(indey)
    else :
        return '0' + str(indey)
        
#os.listdir() 方法用于返回指定的文件夹包含的文件或文件夹的名字的列表，即返回path路径下所有文件的名字，并将其组织为列表的数据结构。运行结果为：fileList=[文件1、文件2、……]
countIndex = 0
for i in fileList:
    oldname=i
    try:
        #新文件名为旧文件名的一部分，故通过字符串截取定义新变量名，应根据不同情景构建合适的函数
        print(i)
        newname = oldname
        # newname = newname.replace('全本','')
        # newname = newname.replace('校对版','')
        # newname = newname.replace('精校版','')
        # newname = newname.replace(' ','')
        # newname = newname.replace('（）','')
        for item in arrOptions:
            newname = newname.replace(item,'')
        arr = newname.split('.')

        isDeleteDoubleNum = False
        if isDeleteDoubleNum:
            # 取消index位置
            if len(arr) == 3 :
              arr[0] = transformNum(countIndex)
              newname = '.'.join([arr[1], arr[2]])
            elif len(arr) == 2 :
                  arr.insert(0, transformNum(countIndex))
                  newname = '.'.join(arr)
            countIndex += 1
        else:
            # 增加index位置
            if len(arr) == 3 :
                arr[0] = transformNum(countIndex)
                newname = '.'.join(arr)
            elif len(arr) == 2 :
                  arr.insert(0, transformNum(countIndex))
                  newname = '.'.join(arr)
            countIndex += 1
            

        # newname = 'abc' + str(random.randint(0, 10000)) + '.jpg'
        os.rename(os.path.join(path,oldname),os.path.join(path,newname))
        #os.rename实现新旧文件名修改
    except Exception as error:
        print(error)
        pass